﻿using System.ComponentModel.Composition;
using ImageClipTool.Applications.ViewModels;

namespace ImageClipTool.Applications.Controllers
{
    [Export]
    internal class ApplicationController
    {
        private readonly ShellController shellController;
        private readonly ImageClipController imageClipController;

        private readonly ShellViewModel shellViewModel;


        [ImportingConstructor]
        public ApplicationController(ShellViewModel shellViewModel, ShellController shellController, ImageClipController imageClipController)
        {
            this.shellController = shellController;
            this.imageClipController = imageClipController;
            this.shellViewModel = shellViewModel;
        }


        public void Initialize()
        {
            shellController.Initialize();
            imageClipController.Initialize();
        }

        public void Run()
        {
            shellViewModel.Show();
        }

        public void Shutdown()
        {
        }
    }
}
